﻿// --------------------------------
// <copyright file="IOrderService.cs" company="private">
//     Microsoft Public License (Ms-PL)
// </copyright>
// <author>Glenn</author>
// ---------------------------------

using System;

namespace OpenTicket.Services
{
    /// <summary>
    /// Service Layer for Order,OrderItems etc
    /// </summary>
    public interface IOrderService
    {
        /// <summary>
        /// Gets the order by id.
        /// </summary>
        /// <param name="orderId">The order id.</param>
        /// <returns>The Order to get from repository</returns>
        OpenTicket.Model.Order GetOrderById(Guid orderId);

        /// <summary>
        /// Saves the specified order.
        /// </summary>
        /// <param name="order">The order.</param>
        /// <returns>The Saved Order</returns>        
        OpenTicket.Model.Order Save(OpenTicket.Model.Order order);

        /// <summary>
        /// Deletes the order.
        /// </summary>
        /// <param name="order">The order.</param>
        void DeleteOrder(OpenTicket.Model.Order order);
    }
}